<?php

class UsuarioModel extends CI_Model {

    function listar_usuarios() {
        $query = $this->db->get('usuario');
        return json_encode($query->result_array());
    }

    function select_usuario($id) {
        $this->db->select('idusuario,usuario.vanombre as nombre,usuario.vaapellido,usuario.vaemail,usuario.vadirecion,
            usuario.idtipo_usuario');
        $this->db->from('usuario');
        $this->db->where(array('idusuario' => $id));
        $query = $this->db->get();
        return json_encode($query->result_array());
    }

    function update_usuario($usuario) {

        $data = array(
            'vanombre' => $usuario['nombre'],
            'vaapellido' => $usuario['apellido'],
            'vaemail' => $usuario['email'],
            'vadirecion' => $usuario['direccion'],
            'idalmacen' => $usuario['almacen'],
            'idtipo_usuario' => $usuario['tipo_usuario']
        );

        $this->db->where('idusuario', $usuario['id']);
        $this->db->update('usuario', $data);
    }

    function insert_usuario($usuario) {
        $data = array(
            'vanombre' => $usuario['nombre'],
            'vaapellido' => $usuario['apellido'],
            'vaemail' => $usuario['email'],
            'vadni' => $usuario['dni'],
            'idtipo_usuario' => $usuario['tipo_usuario'],
            'vadirecion' => $usuario['direccion'],
            'vaclave' => $usuario['clave']
        );

        $this->db->insert('usuario', $data);
    }

    function delete_usuario($id) {
        $this->db->delete('usuario', array('idusuario' => $id));
    }

    function validar($opcion, $values) {

        switch ($opcion) {
            case 'email':
                $query = $this->db->get_where('usuario', array('vaemail' => $values['email']));
                if (count($query->result_array()) > 0) {
                    return TRUE;
                } else {
                    return FALSE;
                }
                break;
            case 'dni':
                $query = $this->db->get_where('usuario', array('vadni' => $values['dni']));
                if (count($query->result_array()) > 0) {
                    return TRUE;
                } else {
                    return FALSE;
                }
                break;
        }
    }

    function login($email, $clave) {
        $this->db->select('vaclave, vaemail,vadni,idusuario');
        $this->db->from('usuario');
        $this->db->where('vaclave', $clave);
        $this->db->where('vaemail', $email);
        $this->db->limit(1);

        $query = $this->db->get();
        if ($query->num_rows() == 1) {
            $rsp['estado'] = true;
            $rsp['datos'] = $query->result_array();
            return $rsp;
        } else {
             $rsp['estado'] = false;
            $rsp['datos'] ='';
            return $rsp;
        }
    }

}

?>
